package Filters;

import FilesManagers.CantOpenFileException;

/*
Clase encargada de limpiar las stop words.
*****************************************
Por defecto uso stopwords.conf como biblioteca de stop words,
cargo las stop words en memoria cuando se crea el objeto.

Metodos publicos:
*****************
procesarLinea(String linea)
	- recibe una linea de texto y la devuelve sin ninguna stopword



*/
public class StopWordsCleaner extends WordsFilter{

	public StopWordsCleaner (String bibliotecaStopWords) throws CantOpenFileException{
		 super(bibliotecaStopWords);
	}



	public StopWordsCleaner () throws CantOpenFileException{
			super("stopwords.conf");
	}
	protected String reemplazoPatron(String linea,String palabra){
		/*do{
			linea=linea.replaceAll(" "+palabra+" "," ");
		}while(Pattern.matches(".* "+palabra+" .*",linea));
		return linea;*/
		String[] palabras = linea.trim().split(" ");
		String resultado="";
		for(int i=0; i< palabras.length; i++){
			if(!palabras[i].equals(" ") && !palabras[i].equals("")){
				if(!palabras[i].trim().equals(palabra)){
					resultado = resultado+" "+palabras[i];
					
				}
				 
			}
			
		}
		return resultado;
		
	}

	
	/*private String filterShortWords(String lineaOrigen){

		if(lineaOrigen.length()>0)
		{
			lineaOrigen = " "+lineaOrigen+" ";

			do{
			lineaOrigen = lineaOrigen.replaceAll(" [a-z][a-z]?[a-z]? "," ");

			}while(Pattern.matches(".* [a-z][a-z]?[a-z]? .*",lineaOrigen));

		}
		return lineaOrigen.trim();

	}*/

}